package com.fpx.order.plat.bussiness.service.order;

import java.util.List;
import java.util.Map;

import com.fpx.order.plat.bussiness.entity.OriginOrder;

/**
 * desc: 订单信息Service接口
 * @author xiangtao(xiangtao@4px.com)
 * @date 2015年12月3日 下午4:54:12
 * @version 1.0
 */
public interface IOriginOrderService {
	
	/**
	 * 
	 * <p>Title: save</p>
	 * <p>Desc: 保存订单信息</p>
	 * @author xiangtao(xiangtao@4px.com)
	 * @date 2015年12月3日 下午4:56:58 
	 * @version 1.0
	 * @param originOrderLst
	 * @throws Exception
	 */
	public void save(OriginOrder originOrder)throws Exception;
	
	/**
	 * 
	 * <p>Title: findDeliveryOrder</p>
	 * <p>Desc: 客户ID和店铺ID查询出需要同步的订单</p>
	 * @author xiangtao(xiangtao@4px.com)
	 * @date 2015年12月7日 上午10:19:28 
	 * @version 1.0
	 * @param cm_id
	 * @param cs_code
	 * @param plat_code
	 * @return
	 */
	public List<OriginOrder>findDeliveryOrder(String cm_id,String cs_code,String plat_code)throws Exception;
	
	/**
	 * 
	 * <p>Title: updateDeliveryStatusSuccess</p>
	 * <p>Desc: 更新同步成功的订单状态</p>
	 * @author xiangtao(xiangtao@4px.com)
	 * @date 2015年12月7日 下午3:16:17 
	 * @version 1.0
	 * @param orderCodes
	 * @param plat_code
	 * @throws Exception
	 */
	public void updateDeliveryStatusSuccess(List<String> orderCodes,String plat_code)throws Exception;
	
	/**
	 * 
	 * <p>Title: updateDeliveryStatusSuccess</p>
	 * <p>Desc: 更新同步失败的订单状态</p>
	 * @author xiangtao(xiangtao@4px.com)
	 * @date 2015年12月7日 下午3:39:27 
	 * @version 1.0
	 * @param order_code
	 * @param plat_code
	 * @throws Exception
	 */
	public void updateDeliveryStatusfailure(String order_code,String plat_code,String failureMessage)throws Exception;
	
	/**
	 * 
	 * <p>Title: findPageOrder</p>
	 * <p>Desc: </p>
	 * @author xiangtao(xiangtao@4px.com)
	 * @date 2016年1月6日 下午8:36:17 
	 * @version 1.0
	 * @param map
	 * @return
	 * @throws Exception
	 */
	public Map<String,Object>findPageOrder(Map<String,Object> map)throws Exception;
	
}

